﻿using Caviar.SharedKernel.Entities.IM;
using System;
using System.Collections.Generic;

namespace Caviar.SharedKernel.Template.View.IM.Friends
{
    public class MyFriend
    {
        /// <summary>
        /// 好友Id
        /// </summary>
        public int FriendId { get; set; }

        /// <summary>
        /// 用户ID
        /// </summary>
        public int UserId { get; set; }

        /// <summary>
        /// 昵称
        /// </summary>
        public string NickName { get; set; }

        /// <summary>
        /// 用户名
        /// </summary>
        public string UserName { get; set; }

        /// <summary>
        /// 姓名
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// 邮箱
        /// </summary>
        public string Email { get; set; }

        /// <summary>
        /// 生日
        /// </summary>
        public DateTime Birthday { get; set; }

        /// <summary>
        /// 性别
        /// </summary>
        public byte Sex { get; set; }

        /// <summary>
        /// 简介
        /// </summary>
        public string Profile { get; set; }

        /// <summary>
        /// 头像
        /// </summary>
        public string Avatar { get; set; }

        /// <summary>
        /// 个性签名
        /// </summary>
        public string Signature { get; set; }

        /// <summary>
        /// 电话
        /// </summary>
        public string Telephone { get; set; }

        /// <summary>
        /// 爱好
        /// </summary>
        public string Hobby { get; set; }

        /// <summary>
        /// 职业
        /// </summary>
        public string Vocation { get; set; }

        /// <summary>
        /// 是否在线
        /// </summary>
        public bool IsOnline { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        public string Remarks { get; set; }

        /// <summary>
        /// 添加好友时间
        /// </summary>
        public DateTime AddFriendTime { get; set; }

        /// <summary>
        /// 联系好友主题
        /// </summary>
        public List<ContactTopic> ContactTopics { get; set; } = new List<ContactTopic>();
    }

    public class ContactTopic 
    {
        /// <summary>
        /// 订阅主题
        /// </summary>
        public string Subscribe { get; set; }

        /// <summary>
        /// 发布主题
        /// </summary>
        public string Publish { get; set; }

        /// <summary>
        /// 取消订阅
        /// </summary>
        public bool IsUnsubscribe { get; set; }

        /// <summary>
        /// 取消发布
        /// </summary>
        public bool IsUnpublish { get; set; }
    }
}
